Internet Protocol (IP) is widely used in different types of networks. For example, for IP based real-time multimedia, Real-Time Transfer Protocol (RTP) is predominantly used on top of User Datagram Protocol (UDP) and IP version 4 (IPv4) or IP version 6 (IPv6). However, due to the large size of IP/UDP/RTP header, which is undesirable in low bandwidth networks such as wireless networks, suitable header compression schemes are needed.
Header compression algorithms are based on the observation that most fields of the IP packet headers remain constant in a packet stream during the length of a session. Thus, it is possible to compress the header information by establishing a context at both compressor and decompressor and by simply carrying a minimal amount of header information from the compressor to the decompressor. Header compression schemes need to be robust so that they can tolerate loss and residual errors on the link over which header compression takes place without losing additional packets or introducing additional errors in the decompressed headers.
There are several types of item lists inside IP/UDP/RTP headers. Item lists include a list of items. Examples include, but are not limited to, Contributing Source (CSRC) list in RTP header, IPv6 Extension Header Chain, Address List in type 0 Routing Header. The Internet Engineering Task Force (IETF) Robust Header Compression (ROHC) Working Group recognizes the problem of how to compress an item list that may vary in composition from application to application. It is desirable to obtain a general and efficient solution applicable to different types of header fields or different applications.